// 组件的渲染从父到子

// Vue.use = function(plugin) {
//   plugin.install(this)    // 将Vue的构造函数作为参数传给插件
// }

function initVuex() {
  // 给所有组件添加$store属性指向根实例中的store
  const options = this.$options;
  if (options.store) { // 如果options中包含store表示是根实例
    this.$store = options.store;
  } else if (options.parent && options.parent.$store) { // 其余的就是子组件
    this.$store = options.parent.$store;
  }
}

export default function applyMixin(Vue) {
  Vue.mixin({
    beforeCreate: initVuex,
  });
}
